DEVICE HMI

0.1 Introduction

The internal HMI device is a tool that resides in the CPU that allows to manage the shown of alphanumeric display with 7 segments present on MicroQMove series D9 and series D2 instruments.
Creates a simple interface in few time and with just a few lines QCL is using a collection of prebuilt functionality that the programmer needs only to configure, either using a range of specializations which are useful to solve those cases where the features configured fail to meet the needs of your application.
Provides 8 recursive numerical views with scrool up/down keys. Each view has a programmable letter. By setting zero in the programmable letter you have an extra digit.

0.2 Installation

0.2.1 Device declaration in the configuration file (.CNF)

In the configuration file (.CNF), the BUS section must be declared so that you have the hardware resources needed to implement the HMI device.
In the INTDEVICE section of the .CNF file must be to add the following definition:

;---------------------------------
; Internal devices declaration
;---------------------------------
INTDEVICE
..
<device_name> HMI TCamp

where:

<device_name>The name assigned to the device.
HMIKeyword that identifies the device display management.
TCampSample time device (1÷250 ms).

0.2.1.1 Example

;---------------------------------
; Internal device declaration
;---------------------------------
INTDEVICE
hmDisplay    HMI   1

0.3 Operation

0.3.1 D2 series

The HMI device manages:

0.3.1.1 Constant keys assignment

KeyConstant code
F16
-32
+4
CLEAR8
ENTER1

0.3.1.2 Constant led assignment

LedConstant code
L12
L24
L38
L416
F512
AL1

The HMI device by default shown the SCREEN level (is the recursive view management).

To move to the other functions, you must scroll through the various levels with F key (must be enabled by setting to 1 the bit 14 and the bit 15 of the “enable” parameter).

Confirm the level reached by pressing the ENTER key the following navigation diagram.

0.3.1.4 SCREEN level

FUNCTIONS level
MENU level
MANUAL level
Return to the FUNCTIONS level

To exit by levels and go back to the recursive views press for 2 seconds about.

0.3.1.5 FUNCTIONS level


PASSWORD level

Execution program setup

Execution step setting

Generic long setting

PAR03 setting

PAR04 setting

DIAGNOSTIC level.
Return to the PASSWORD level

0.3.1.6 MANUAL level


Shown value passed in MANVALUE
If it was previously set to low or high

0.3.1.7 ADJUSTMENT level


To exit from levels and return to recursive views press the key for 2 seconds about.

0.3.2 Recursive views

There are up to 8 recursive views that are changed using the keys .
The number of recursive views can be set using scnum parameter (each bit enables a view).
All these are only in view, are not entered from keyboard.

The device allows you to set the leftmost display using with sclabel1…8 parameter. By setting this value to 0, the display shows the value contained in the screen1…8 parameter to 6 digits and sign; if sclabel1…8 take the value different from 0, the visualization will be 5 digits and the sign or 6 digits without sign.

For each shown variables you can set the number of decimal digits with the scdecpt1…8 parameter.
Also with the scalpha parameter you can change the visualization in alphanumeric characters.

The alphanumeric characters are set through scdis1…7 parameters.
The scactual parameter provides the current view (each bit has a view).

N.B.: When, in the device you try to confirm a minimum or maximum data out of bounds, the “Error” message appears for one second, then returns the introduction with the old value.
When the device, shown a exceeds data with the maximum number of shown digits, the display shows a character. The character will be:
=” If positive visualization overflow and “=” if negative visualization overflow.

0.3.3 Alarms management

The device allows a complete alarm management.
You can force an alarm by QCL entering the following into a suitable list active alarms inside the device. You must specify which alarm you want to insert in the list with the alvalue parameter and his priority with alprior, then insert it with the SETALARM command.
The list is composed of a maximum of 20 items.
For the alarms priority is adjustable from 0÷19. The zero level is reserved to te message.
When an alarm is active, recursive visualization is overwritten with the alarm message type: and the relative red led will light up .

You can change views but after 7 seconds, the display will revert to show the alarm. The alarm led remain always on.

By pressing the button for 3 sec. during the alarm message visualization, the operator can cancel the alarm. If there are more active alarms at the same time will receive the first forced to higher priority. In case of equal priority will receive the last intervened. The cancellation is always relative only to the visualized alarm.

The bit 0 of alsetting parameter, will allow to cancel with key all alarms with one click.
The bit 1 of alsetting parameter, will allow to cancel also the messages.

The same alarm management is also used to display messages. A message behaves like a alarm only that the message consists of:

A message does not active the ALARM led, stays on for 5 sec and then disappears without pressing key.
A message is set as an alarm but must always have zero priority.

Alarms are displayed only in recursive views. If intervene an alarm in: F1, F2, MENÙ, MAN mode or other the visualization will appear as soon as I get out of this function. Instead, the ALARM led lights immediately.

0.3.4 I/O diagnostics

The I/O diagnostics it's accessible from the mene described above.

0.3.4.1 Interrupt signals visualizing

0.3.5 Manual state management

If the bit 0 of the enable parameter is to 1 enables the ability to access the manual state of the device through the appropriate keystroke listed above.
If the bit 0 of the mansetting parameter is to 1 is shown the written: where the operator can specify which axis intends to move.
The number that the operator writes is reported in axisnum parameter.
The manvalue and mandecpt parameters, allow you to specify the value to display in this state and the number of decimal places with which access respectively.

The display shows the parameters to enable “slow” movement of the axis:

or “fast” mode.

The passage and the confirmation of the parameters entered by the key.

Jog forward and backward movements of the axis are carried out by the buttons.

0.3.5.1 Setup parameters and generic

The HMI device provides 12 SETUP variables (setup1…12) and 3 generic (par03,par04,par07) parameters.

The system also comes with 2 other generic par01 and par02 parameters that may be protected by a password chosen by the programmer and can be set with the pass01 parameter. This password can not take reserved values 100 and 123.
The first are protected with password 100 while the seconds are freely usable.

If the bit 2 of the enable parameter is to 1 enables the ability to go into SETUP mode.
After the introduction of the password (100), the device prompts you to enter the first setup parameter marked with the A letter.

With the keys You can cycle through the twelve variables and with the {:software:devices:hmi:hmi_03.png?nolink50|}} key to confirm the entry of a value.

If the bit 3 of the enable parameter is to 1 enables the ability to set the protected par01 and par02 parameters.
With the pressure in the sequence described in the specific paragraph, the device prompts you to enter the first parameter.
To introduce the par03…04 parameters You must enable the option setting respectively the bit 7 and 8 of the enable parameter.

If the bit 12 of the enable parameter is to 1 enables the ability to set the par07 parameter.
The par07 parameter is generic with the feature of being adjustable in any mode. For this parameter, you can also set the number of characters with nchar07, the number of decimal places with decpt07, the offset value with off07 and the following configurations with the bits of the set07 parameter:
bit 0: enables data input;
bit 1: enable the completion of the data with leading zeros (only if bit0 = 0);
bit 2: reserved;
bit 3: enables alphanumeric display;
bit 4: reserved;
bit 5: enables introduction given with exponential increase/decrease;
bit 6: disable introducing sign.
To start the introduction or the simple visualization of the par07 parameter you use the ENPAR07 command.

0.3.6 State management in calibration

If the bit 13 of the enable parameter is to 1 the device provides a structure of introductions and views in order to build a calibration sequence.
The adjustment is accessible through the sequence described above.
If it's enabled the choice of calibration with the bit 0 of the tarsetting parameter to 1 shown the written:

and the operator choose the calibration to be executed. The input value is shown in the tartype parameter.
For each calibration page the system provides up to 8 long (tarvalue1…8) enabled by tarnum parameter manage to bit (one bit for each tarvalue). These values can be read and modified.

You can scroll the tarvalue parameters by using the keys, while it is possible to display the tarmon1 and tarmon2 parameters with the key.

The tarmon1…2 parameters allow you to associate two read-only variables to display during calibration.
The device provides the number of introduction current calibration, both read and write access, in the taractual parameter as the following table:
0 = In introduction tartype parameter
1 = In introduction tarvalue 1 parameter
2 = In introduction tarvalue 2 parameter
3 = In introduction tarvalue 3 parameter
4 = In introduction tarvalue 4 parameter
5 = In introduction tarvalue 5 parameter
6 = In introduction tarvalue 6 parameter
7 = In introduction tarvalue 7 parameter
8 = In introduction tarvalue 8 parameter
The setting of the taractual less than 0 or greater than 8 is not allowed and the default value 1 is enforced.
You can determine whether you get one of the tarmon1 and tarmon2 parameters through the bit 1 and 2 of the tarsetting parameter.
Normally the parameters displayed on the calibration are unlabelled to distinguish them, but you can set it through dis1…7 parameters depending on the current view.

0.3.7 Program memory management

If the bit 1 of the enable parameter is to 1 you can access the memory management for the work programmes. This memory is located in serial flash. The device manage all operations to introduce the values.
Program memory is fully configurable by selecting the number of internal elements at every step (numelem from 1 to 6), and the number of steps for each program (numstep from 1 to 4096).
Automatically calculates the number of programs (numprog) (see at pag. 32 numprog parameter)

Elements number (1÷numelem)
Steps number (1÷numstep)
Program number (automatically)

With press the key and the and the choice of menu you are prompted for dialing program.

The value entered by the operator you can read it in the proged parameter.
If the bit 0 of the prgsetting parameter is to 0 is required the introduction of step number to edit.
Shown following view:

The value entered by the operator you can read it in the steped parameter.
If the bit 0 of the prgsetting parameter ia to 1 you jump right into the introduction of the first step. Any confirmation of the data introduced will go to next item. To the last item you pass to the next step. WIth the key You can iterate over every step.
Just entered a new step for 2 seconds or until you press the key shown following view:

and the steped parameter is updated with the new value of step.

If you get to the last step, you will return to first without changing program.
The elemactual parameter allows you to know which element of the step you are inserting. The elemtypef parameter lets you specify how to insert the f element.
If is 0 the f element is inserted as a single long value, While if it is including between 1 and 31 are inserted, one to one, the number of specified bits.
The elema…f elemnts are indicated with A…F letters.
If the bit 1 of the prgsetting parameter is to 1 enables the introduction of program end with the F3 key.

The introduction of the program parameter lets you specify the step number where you want to end the program. The calculation of program memory available is reduced to 4096-N programs, then:
numprog = 4096 / ((numstep * numelem * 4) + 5)

The elements of each step (elema…f) and the elemend paramenter can be read or written by selecting the program number progin and the step stepin and giving alternately the WRITESTEP and READSTEP commands.

0.3.7.1 Example:

; ;---------------------------------
    ;Program call command
 
    IF gwComDisplay EQ 10
      gbI = 1
      gwComDisplay = 20
    IF gwComDisplay EQ 20
      hmi:progin = swPrgEx
      hmi:stepin = gbI
      hmi:stepout = 0
      READSTEP hmi                      ;Read device command
      gwComDisplay = 30
    ENDIF
    IF gwComDisplay EQ 30
      IF hmi:stepin EQ hmi:stepout      ;Wait reading executed
 
            aslArray1[gbI] = hmi:elema
            aslArray2[gbI] = hmi:elemb
            aslArray3[gbI] = hmi:elemc
 
            gbI = gbI + 1
            IF gbI LE NUM_STEP
                   gwComDisplay = 20
            ELSE
                   gwComDisplay = 0
            ENDIF
      ENDIF
    ENDIF
     ;---------------------------------

P.S.
When, from Qview, you make a “Save data” saves all the retentive parameters of the application in a file. In the microQMove, if is present the HMI device, program memory is saved (16kbytes).

0.3.8 D9 series

The HMI device manage:

0.3.8.1 Constant key allocation

KeyConstant Code
F1256
F2512
F316384
F432768
F51048576
F62097152
UP8
DOWN4
MAN1024
MENU65536
.4194304
+/-16
12048
24096
38192
4131072
5262144
6524288
78388608
81
92
064
CLEAR32
ENTER12

0.3.8.2 Constant leds assignment

LedCOnstant Code
L11
L22
L34
L48
F165536
F2262144
F3524288
F416384
F532768
F633554432
MAN1024
MENU16
L/H409

0.3.9 Recorsive views

There are up to 8 recursive views that are changed using the keys.
The number of recursive views can be set using scnum parameter (any bit enable a view).
All these are only in viewing, are not entered from keyboard.
The device allows you to set the leftmost display using sclabel1…8 parameter. By setting to 0 this value, the display shows the value contained in the screen1…8 parameter to 6 digits with sign; if sclabel1…8 take the value different from 0 the representation will be at 5 digits with sign or 6 digits without sign.
For each of the shown you can set the number of decimal digits with the scdecpt1…8 parameter.
Also with the scalpha parameter you can change a display at alphanumeric characters.
The alphanumeric characters are set using the scdis1…7 parameters.
The scactual parameter provides the current view number (each bit has a view).

P.S. When, the device you try to confirm a given minimum or maximum limits allowed by the introduction, the message “Error” appears for one second, then returns the introduction with the old value.
When the device shown a data exceeds the maximum number of viewable digits, the display shows, for all the displays concerned, a character. The character will be:
=” If positive shows overflow and “=” if negative shows overflow.

0.3.10 Alarms management

The device has a complete alarm management.
From QCL You can force an alarm by entering this in a separate list active alarms inside the device. You must specify which alarm you want to insert in the list with the alvalue parameter and the priority with alprior, then insert it with the SETALARM command.
The list is composed of up to 20 items.
For the alarms the priority is adjustable from 0÷19. The zero level is reserved for messages.
When an alarm intervenes the recursive visualization is overwritten with the alarm message type: and the relative red led will light up .
You will can change the view but after a time of 7 sec., the display will return to show the alarm. The alarm led will remain ON in any case.
Press the key for 3 sec. during viewing of the alarm message, the operator can cancel the alarm. If there are multiple active alarms at the same time will receive the first forced to higher priority. In case of equal priority will be shown the last intervened. Deletion in any case is always relative only to the shown alarm.\ The bit 0 of the alsetting parameter will allow cancel with key all alarms with one click instead of one alarm at a time.
The bit 1 of the alsetting parameter will allow cancel even the messages.
The same alarm management is also used to viewing of the messages. A message behaves like an alarm only that the message consists of:
A message does not activate the ALARM led, lasts for 5 seconds and then disappears without pressing the key.
A message can be set as an alarm but must have always zero priority.
Alarms are shown only in recursive views. If an alarm when it is: F1, F2, MENÙ, MAN or other, the viewing will appear as soon as you exit this function. The ALARM led instead turn on right away.

0.3.11 Diagnostica I/O

La diagnostica I/O è accessibile tramite la sequenza F1+6..
In questa modalità vi sono sempre quattro visualizzazioni selezionabili con i tasti .

0.3.11.1 Visualizzazione segnali in interrupt

0.3.11.2 Visualizzazione ingressi allo slot 03

0.3.11.3 Visualizzazione ingressi allo slot 04

0.3.11.4 Visualizzazione uscite allo slot 04

Nota Bene
Per la visualizzazione n°2 deve essere presente la scheda L3-I17 nello slot 03.
Per la visualizzazione n°3 deve essere presente la scheda L3-I17 nello slot 04.
Per la visualizzazione n°4 deve essere presente la scheda H3-RV0 nello slot 04.

0.3.12 Gestione dello stato in manuale

Se il bit 0 del parametro enable è a 1 viene abilitata la possibilità di accedere allo stato manuale del device tramite il tasto . Alla pressione di questo tasto si accende il relativo led.
Se il bit 0 del parametro mansetting è a 1 viene visualizzata la scritta:

dove l’operatore può specificare quale asse intende muovere.
Il numero che l’operatore scrive è riportato nel parametro axisnum.
I parametri manvalue e mandecpt, permettono di specificare il valore da visualizzare in questo stato e il numero di cifre decimali con cui visualizzarlo rispettivamente.
Se il bit 1 del parametro mansetting viene impostato a 1 si accede allo stato manuale senza la pressione del tasto.

0.3.12.1 Parametri di setup e generici

Il device HMI mette a disposizione del programmatore 12 variabili di SETUP (setup1…12) e 5 parametri generici (par03…07). Inoltre il sistema è dotato di altri 2 parametri generici par01 e par02 che possono essere protetti da una password scelta dal programmatore e impostabile con il parametro pass01. Tale password non può assumere i valori riservati 100 e 123.
Le prime sono protette da password 100 mentre i secondi sono utilizzabili liberamente.
Se il bit 2 del parametro enable è a 1 viene abilitata la possibilità di entrare in modalità SETUP.
Con la pressione in sequenza dei tasti F1 + 0 + 100 il device richiede l’inserimento del primo parametro di setup contraddistinto dalla lettera A.
Con le frecce direzionali è possibile scorrere le dodici variabili di setup e con il tasto ENTER confermare l’inserimento di un valore.
Se il bit 3 del parametro enable è a 1 viene abilitata la possibilità di impostare i parametri protetti par01 e par02.
Con la pressione in sequenza dei tasti F1 + 0 + XXX, dove XXX è la password scelta dall’operatore, il device richiede l’inserimento del primo parametro.
Per introdurre i parametri par03…06 è necessario abilitarne la possibilità settando rispettivamente i bit 7, 8, 10, 11 del parametro enable.
Il parametro par03 è inserito con la combinazione F1 + 4.
Il parametro par04 è inserito con la combinazione F1 + 5.
Il parametro par05 è inserito con la combinazione F2 + 4.
Il parametro par06 è inserito con la combinazione F2 + 5.
Se il bit 12 del parametro enable è a 1 viene abilitata la possibilità di impostare il parametro par07.
Il parametro par07 è un parametro generico con la caratteristica di essere impostabile in qualsiasi modalità. Per questo parametro è possibile inoltre impostare il numero di caratteri con nchar07, il numero di cifre decimali con decpt07, il valore d'offset con off07 e le seguenti configurazioni con i bit del parametro set07:
bit 0: abilita l’introduzione dati;
bit 1: abilita il completamento del dato con gli zeri preposti (solo se bit 0 = 0);
bit 3: abilita la visualizzazione alfanumerica;
bit 4:disabilita l’attesa rilascio tasto.
Per avviare l’introduzione o la semplice visualizzazione del parametro par07 si utilizza il comando ENPAR07.

0.3.13 Gestione dello stato di taratura

Se il bit 13 del parametro enable è a 1 il device mette a disposizione una struttura di introduzioni e visualizzazioni atte a costruire una sequenza di taratura. La taratura è accessibile tramite la sequenza F1 + 0 + 123.
Se è abilitata la scelta della taratura con il bit 0 del parametro tarsetting a 1 compare la scritta:

e l’operatore sceglie la taratura da eseguire. Il valore introdotto è riportato nel parametro tartype.
Per ogni pagina di taratura il sistema mette a disposizione fino a 8 long (tarvalue1…8) abilitabili dal parametro tarnum gestito a bit (un bit per ogni tarvalue). Questi valori possono essere letti e modificati. È possibile scorrere i parametri tarvalue tramite i tasti mentre è possibile visualizzare il parametro tarmon1 con F5 e il parametro tarmon2 con F6.

Inoltre è possibile associare due variabili da controllare durante la fase di taratura ai due parametri tarmon1…2 solo in lettura.
Il device fornisce infine il numero dell’introduzione taratura attuale, sia in lettura che in scrittura, nel parametro taractual secondo la seguente tabella:
0 = In introduzione parametro tartype
1 = In introduzione parametro tarvalue 1
2 = In introduzione parametro tarvalue 2
3 = In introduzione parametro tarvalue 3
4 = In introduzione parametro tarvalue 4
5 = In introduzione parametro tarvalue 5
6 = In introduzione parametro tarvalue 6
7 = In introduzione parametro tarvalue 7
8 = In introduzione parametro tarvalue 8
L’impostazione di taractual minore di 0 o maggiore di 8 non è consentita e viene imposto il valore di default 1.
E’ possibile determinare se viene visualizzato uno dei due parametri tarmon1 e tarmon2 tramite i bit 1 e 2 del parametro tarsetting.
Normalmente i parametri visualizzati nella taratura sono privi di etichetta per distinguerli uno dall’altro, ma è possibile impostarla tramite i parametri dis1…7 a seconda della visualizzazione attuale.

0.3.14 Gestione memoria programmi

Se il bit 1 del parametro enable è a 1 è possibile accedere alla gestione della memoria per i programmi di lavoro. Tale memoria è localizzata in flash seriale. Il device gestisce tutte le operazioni per introdurre i valori.
La memoria programmi è completamente configurabile scegliendo il numero di elementi interni ad ogni passo (numelem da 1 a 6), e il numero di passi di ogni programma (numstep da 1 a 4096).
Automaticamente viene calcolato il numero di programmi (numprog) (vedi a pag. 32 parametro numprog)

Elements number (1÷numelem)
Steps number (1÷numstep)
Program number (automatically)

Con la pressione del tasto e la scelta del menù viene chiesta la selezione del numero programma.

Il valore introdotto dall’operatore è possibile leggerlo nel parametro proged.
Se il bit 0 del parametro prgsetting è a 0 viene richiesta l’introduzione del numero del passo da modificare.
Compare la visualizzazione:

Il valore introdotto dall’operatore è possibile leggerlo nel parametro steped.
Se il bit 0 del parametro prgsetting è a 1 si entra subito in introduzione del primo passo. Ad ogni conferma del dato introdotto si passa all’elemento successivo. Sull’ultimo elemento si passa al passo successivo.
Con il tasto è possibile scorrere gli elementi di ogni passo.
Appena entrato in un nuovo passo per 2 secondi o fino alla pressione del tasto ENTER compare la visualizzazione:

e il parametro steped è aggiornato al nuovo valore di passo.
Quando arrivo in fondo all‘ultimo passo, ritorno al primo senza cambiare programma.
Il parametro elemactual permette di conoscere quale elemento del passo si sta inserendo. Il paramet ro elemtypef permette di specificare come inserire l’elemento f.
Se è 0 l’elemento f viene inserito come unico valore long, mentre se è compreso tra 1 e 31 vengono inseriti, uno a uno, il numero di bit specificato. Gi elementi elema…f sono indicati con le lettere A…F.
Se il bit 1 del parametro prgsetting è a 1 viene abilitata l’introduzione del fine programma tramite il tasto F3.
L’introduzione del parametro di fine programma permette di specificare il numero del passo a cui si vuole far concludere il programma. Il calcolo della memoria programmi disponibili si riduce a 4096-N programmi, quindi:\\numprog = 4096 / ((numstep * numelem * 4) + 5)
Gli elementi di ogni passo (elema…f) e, eventualmente, il parametro elemend possono essere letti o scritti scegliendo il numero di programma progin e lo step stepin e dando alternativamente i comandi WRITESTEP e READSTEP.

0.3.14.1 Esempio:

;------------------------------------
    ;Comando richiamo del programma
 
    IF gwComDisplay EQ 10
      gbI = 1
      gwComDisplay = 20
    IF gwComDisplay EQ 20
      hmi:progin = swPrgEx
      hmi:stepin = gbI
      hmi:stepout = 0
      READSTEP hmi ;Comando lettura del device
      gwComDisplay = 30
    ENDIF
    IF gwComDisplay EQ 30
      IF hmi:stepin EQ hmi:stepout ;Attesa lettura avvenuta
 
        aslArray1[gbI] = hmi:elema
        aslArray2[gbI] = hmi:elemb
        aslArray3[gbI] = hmi:elemc
 
        gbI = gbI + 1
        IF gbI LE NUM_STEP
              gwComDisplay = 20
        ELSE
              gwComDisplay = 0
      ENDIF
    ENDIF
    ENDIF
;------------------------------------

Nota bene Quando, da Qview, si effettua un “Save data” vengono salvati tutti i parametri ritentivi dell‘applicativo in un file. Nel microQMove, se è presente il device HMI, si è stata salvata anche la memoria programmi (16kbytes).

0.3.15 Gestione delle funzioni F

100Introduzione 12 parametri di setup.
I valori sono riportati sui parametri setup01..12
123Taratura
XXXIntroduzione di 2 parametri generici par01 e oar02.
La password è impostabile con il parametro pass01.
Scelta numero di programma in esecuzione.
Scelta numero del passo in esecuzione.
Introduzione vuota, sarà possibile stampare una
stringa scrivendo sui parametri dis1..7
“ “
Introduzione di una long generica sul parametro par03.
Introduzione di una long generica sul parametro par04.
Diagnostica I/O.
Introduzione di una long generica sul parametro par05.
Introduzione di una long generica sul parametro par05.

Il seguente schema a blocchi riassume le operazioni che sono possibili eseguire direttamente dalla tastiera dello strumento. Tali operazioni, tuttavia, possono essere implementate anche tramite QCL.

N.B. Per uscire da ognuna di queste procedure e tornare alle visualizzazioni ricorsive è necessario usare il comando EXIT.

0.3.16 Mappa dei caratteri

Valore
decimale da
introdurre
in:
scdis1…7
sclabel1…7
dis1…7
Carattere
7 segmenti
Valore
decimale da
introdurre
in:
scdis1…7
sclabel1…7
dis1…7
Carattere
7 segmenti
Valore
decimale da
introdurre
in:
scdis1…7
sclabel1…7
dis1…7
Carattere
7 segmenti
Valore
decimale da
introdurre
in:
scdis1…7
sclabel1…7
dis1…7
Carattere
7 segmenti
0142842
1152943
2163044
3173145
4183246
5193347
6203448
72135 49
8223650
9233751
10243852
11253953
12264054
13274155

0.4 Comandi e parametri

0.4.1 Simbologia adottata

Il nome del parametro, stato o comando è riportato alla sinistra della tabella.

R
Indica se il relativo parametro o stato è ritentivo (al momento dell’inizializzazione del device mantiene lo stato precedentemente definito), oppure lo stato che assume al momento dell’inizializzazione del device.
Se il device non necessita d'inizializzazione il campo “R” indica il valore che il parametro o stato assume all’accensione della scheda.
R = Ritentivo
0 = Al momento dell’inizializzazione del device il valore è forzato a zero.
1 = Al momento dell’inizializzazione del device il valore è forzato a uno.
- = Al momento dell’inizializzazione del device è presentato il valore significativo.

D
Indica la dimensione del parametro.
F = Flag
B = Byte
W = Word
L = Long
S = Single Float

0.4.1.1 Condizioni

Sono descritte tutte le condizioni necessarie affinché il parametro sia considerato corretto o perché il comando sia accettato.
In alcuni casi sono specificati dei valori limite per l’accettazione del parametro: se sono introdotti dei valori esterni ai limiti impostati, il dato è in ogni caso accettato; pertanto devono essere previsti opportuni controlli dell’applicativo tali da garantire il corretto funzionamento.
Per l’esecuzione di un comando, tutte le relative condizioni devono necessariamente essere soddisfatte; in caso contrario il comando non è inviato.

A
Indica il modo d'accesso.
R = Read (lettura).
W = Write (scrittura).
RW = Read / Write.

0.4.2 Comandi

NomeCondizioniDescrizione
SETALARM-SETTING a new ALARM
Con questo comando allarme è possibile forzare un nuovo allarme. Se l'allarme è giá in lista con la medesima prioritá esso non verrá forzato. Se invece la prioritá è diversa essa verrá aggiornata.
CLRALARM-CLEAR ALARM
Come la pressione del tasto CLEAR per 3 sec. Azzera gli allarmi presenti.
READSTEP-ReadStep
Consente la lettura del passo selezionato in stepin.
WRITESTEP-WriteStep
Consente la scrittura del passo selezionato in stepin.
ENPAR07status = 0Enter on par07
Permette di forzare l'introduzione del parametro par07 oppure di visualizzarlo.
Nel caso dell'introduzione del parametro compare sempre la label “i”.
.
EXIT-Exit from procedure
Permette di uscire da qualsiasi procedura e tornare alle visualizzazioni ricorsive.
CMD01-Available command for future implementations
Comando disponibile per future implementazioni.
CMD02-Available command for future implementations
Comando disponibile per future implementazioni.

0.4.3 Parametri

NomeDRACondizioniDescrizione
keyL-R-Key
Rappresenta in ogni istante lo stato dei tasti. Ogni tasto è rappresentato da un bit.
Per l'assegnazione dei bit fare riferimento alla tabella presente nel capitolo dedicato.
ledsL0R/W-Leds status
Rappresenta in ogni istante lo stato dei leds tastiera.
Questa variabile può essere modificata anche da device quando vengono eseguite operazioni nella tastiera.
Per l'assegnazione dei bit fare riferimento alla tabella presente nel capitolo dedicato.
blinkledsL0R/W-Blink leds status
Rappresenta in ogni istante lo stato del blink nel led tastiera. Questa variabile può essere modificata anche da device quando vengono eseguite operazioni nella tastiera. La mappatura dei bit rispecchia quella del parametro leds.
Perchè un led lampeggi esso deve essere attivato dalla variabile leds. Il tempo di blink è fissato a 300 ms ON e 700 ms OFF.
dis1…7B-R/W-Display position 1…7
Rappresenta il contenuto attuale del display nella posizione 1…7.
Dis1 è il display più a destra e dis7 è quello più a sinistra.
blinkdisB0R/W-Blink display
E' una variabile a bit per abilitare il blink su un carattere. Ogni bit è un carattere. Il bit meno significativo è associato al display più a destra.
screen1…8L0R/W-Screen 1…8 value
E' il valore della visualizzazione ricorsiva nr. 1…8
sclabel1…8B0R/W-Label for screen 1…8
E' il valore della cifra più a sinistra della visualizzazione ricorsiva nr. 1…8.
Se si imposta a zero, tutto il display è utilizzato per il valore numerico stampando un valore a 6 cifre più il segno. Se il valore è diverso da zero la rappresentazione sarà a 5 cifre più il segno o 6 cifre senza segno.
scdecpt1…8B0R/W-Decimal point for screen 1…8
E' il valore del punto decimale per la visualizzazione nr. 1…8.
Range valido: 0 ÷ 3
scnumBRR/W-Number of screen
E' il numero di visualizzazioni abilitate.
E' gestita a bit. Bit 0 = screen1, bit 1 = screen2… ecc.
scactualB0R/W-Actual screen
La lettura fornisce il numero della visualizzazione attuale, in scrittura consente di impostare il numero della visualizzazione attuale.
0 = screen1, 1 = screen2… ecc.
Range valido: 0 ÷ 7
scalphaB0R/W-Screen in alpha mode
Abilita la visualizzazione in alpha mode. In questa modalità sul display compare quanto contenuto nei parametri scdis1…8.
Bit 0 = screen1, bit 1 = screen2… ecc.”
scdis1…7B0R/W-Screen display 1…7
Rappresenta il contenuto del display durante la visualizzazione ricorsiva in alpha mode.
alvalueB0R/W-Alarm value (1 ÷ 99)
E' il valore dell'allarme da inserire con il comando SETALARM.
alpriorB0R/W-Alarm priority (1 ÷ 99)
E' il valore della priorità dell'allarme da inserire con il comando SETALARM.
alsettingB0R/W-Alarm setting
Il bit zero, se attivo, permetterà di cancellare con il tasto CLEAR (o con il comando CLRALARM) tutti gli allarmi con una sola pressione invece che uno alla volta.
Il bit 1 serve per decidere come funziona il tasto CLEAR quando cancella tutti gli allarmi:
0: cancella solo gli allarmi e non i messaggi;
1: cancella tutto.
mansettingB0R/W-Setting manual
Il bit 0, se settato, abilita la selezione dell'asse in movimentazione.
Il bit 1, se settato, comanda l'ingresso in manuale senza la pressione del tasto MAN.
axisnumB0R/W-Axe number
Nel caso sia abilitata la selezione dell'asse indica l'asse da movimentare.
manvalueL0R/W-Manual value
E' il valore visualizzato durante la movimentazione.
mandecptB0R/W-Manual decimal point (0 ÷ 3)
E' il numero di cifre decimali durante la visualizzazione di manvalue.
taractualB0R/W-Actual tarature
Indica il numero dell'introduzione corrente.
tardecptB0R/W-Tarature decimal point. (0 ÷ 3)
E' il numero di cifre decimali durante la visualizzazione dei tarvalue.
E'possibile modificarlo a seconda del valore di taractual tramite QCL. Il range è compreso tra 0 e 3.
tarsettingB0R/W-Setting tarature
Il bit 0 abilita la selezione della taratura.
Il bit 1 indica che la taratura sta visualizzando il monitor 1.
Il bit 2 indica che la taratura sta visualizzando il monitor 2.
tartypeB0R/W-Tarature type
Indica la taratura scelta dall'operatore nella prima visualizzazione (se abilitata).
tarnumB0R/W-Tarature number
Indica il numero di introduzioni abilitate gestita a bit.
Bit 0 = tarvalue1, bit 1 = tarvalue2… ecc.
tarvalue1…8L0R/W-Tarature value 1…8
E' uno degi 8 valori visualizzati durante la taratura.
tarmon1…2L0R/W-Tarature monitor 1…2
Solo per serie D9
Queste due long contengono il valore visualizzato dalla procedura alla pressione rispettiva dei tasti F5 e F6. Al tasto F5 è associata la variabile “tarmon1”. Al tasto F6 è associata la variabile “tarmon2”. Il led associato al tasto F5 si accende quando si sta visualizzando tarmon1, idem per il led F6.
taractualB0R/W-Actual tarature
Indica il numero dell'introduzione corrente.
numelemBRR/W-Element number (1 ÷ 6)
Indica il numero di elementi all'interno di un passo.
numstepWRR/W-Step number (1 ÷ 4096)
Indica il numero di passi in ogni programma.
numprogW-R-Program number
Indica il numero di programmi disponibili. Il valore è ricavato dal numero di long in memoria programmi, dal parametro “numelem” e dal “numstep”.
Se viene abilitata l'introduzione del fine programma, impostando il bit 1 della variabile “prgsetting” a 1, il numero di programmi disponibili si calcola:
numprog = 4096 /(numstep * numelem + 1).
Se non viene abilitata l'introduzione del fine programma, impostando il bit 1 della variabile “prgsetting” a 0, il numero di programmi disponibili si calcola:
numprog = 4096 /(numstep * numelem).
progedW0R-Program edit
Programma in introduzione nella memoria programmi.
stepedW0R-Step edit
Passo in introduzione nella memoria programmi.
proginW0R/W-Program input
Indica il numero del programma da memorizzare con il comando WRITESTEP o leggere con il comando READSTEP.
stepinW0R/W-Step input
Indica il numero del passo da memorizzare con il comando WRITESTEP o leggere con il comando READSTEP.
stepoutW0R/W-Step output
Indica che il passo scritto è stato memorizzato, oppure che il passo in lettura è disponibile.
Per verificare che il comando inviato (WRITESTEP o READSTEP) è stato eseguito è necessario controllare che stepin si uguale a stepout.
elema…fL0R/W-Element A…F
Sono i valori del passo utilizzati con i comandi READSTEP e WRITESTEP.
elemtypefB0R/W-Type of element f
Se impostata a zero l'elemento f è una long (come gli altri elementi).
Se impostata diversa da zero indica il numero di flags che vengono introdotti sul parametro elemf.
Range valido: 0 ÷ 31
elemendB0R/W-Elements for end program
E' il valore del passo di fine programma, se abilitato, leggibile e scrivibile con i comandi READSTEP e WRITESTEP.
elemdecptB-R/W-Element decimal point (0 ÷ 3)
E' il numero di cifre decimali durante la visualizzazione degli elementi.
E' possibile modificarlo a seconda del valore di elemactual tramite QCL.
elemactualB0R-Actual element
Indica l'introduzione attiva:
0: fuori dal menù;
1: introduzione programma;
2: introduzione passo;
3: in introduzione elema
4: in introduzione elemb
5: in introduzione elemc
6: in introduzione elemd
7: in introduzione eleme
8: in introduzione elemf
Se il parametro elemtypef è > 0 e < 32; elemactual, nel parametro elemf va da 8 a 38.
39: in introduzione fine programma (tasto F3 solo D9). Questa introduzione è accessibile solo se il bit 1 del parametro ”“prgsetting”“ è uguale a 1.
prgsettingB0R/W-Setting program data-entry
Il bit 0 abilita la selezione del passo quando si entra nel menù programmi.
Altrimenti l'introduzione entra nel passo 1.
Il bit 1 abilita l'introduzione del fine programma. Quando questo bit è a 1, il numero di programmi disponibili diventa “numprog = 4096 / (numstep * numelem + 1)”. Se il bit 1 è a 0 il numero di programmi disponibili diventa “numprog = 4096 / (numstep * numelem)”.
setup01…12LRR/W-Setup 01…12
Valore dei parametri di setup.
par01…07LRR/W-Parameter 01…07
Valore dei parametri generici.
nchar07B0R/W-Char number for parameter 07
Indica il numero di caratteri per il parametro 07.
Range valido: 1 ÷ 7
off07B0R/W-Offset for parameter 07
Indica il valore di offset per il parametro 07.
Range valido: 0 ÷ 6
decpt07B0R/W-Decimal point for parameter 07
Indica il numero di cifre decimali per il parametro 07.
Range valido: 0 ÷ 3
set07B0R/W-Flags parameter 07
Bit 0: abilita l'introduzione dati;
bit 1: abilita il leading zero blank (solo se bit 0 = 0);
bit 2: riservato;
bit 3: abilita la visualizzazione in alpha mode;
bit 4: disabilita l'attesa rilascio tasto(solo D9).
Solo per D2 bit 5: abilita l'introduzione con up/down esponenziale;
bit 6: disabilta l'introduzione segno.
pass01WRR/W-Password for F + 0
Contiene il valore da introdurre in F1 + 0 + password per accedere ai parametri par01 - par02.
Non può assumere i valori riservati 123 e 100.
progexWRR-Program in execution
Indica il programma in esecuzione (scelto con F1+1).
Range valido: 1 ÷ numprog
stepexWRR-Step in execution
Indica il passo in esecuzione (scelto con F1+2).
Range valido: 1 ÷ numstep
statusB0R-Status
Indica lo stato della visualizzazione. E' una variabile gestita a bit.
Bit 0: se 1 significa che è premuto un tasto numerico nella tastiera e lostrumento si trova nelle visualizzazioni ricorsive;
bit 1: significa che sto visualizzando un allarme;
bit 2: significa che sto visualizzando un messaggio.
destatusW0R-Data-entry status
Indica lo stato dello strumento:
Per serie D2
00: in visualizzazioni ricorsive;
01: in visualizzazione allarmi;
02: in movimentazione manuale;
03: in introduzione programmi;
04: riservato;
05: in introduzione password;
06: in setup;
07: in introduzione parametri par01 e par02;
08: in taratura (password 123);
09: in scelta programma da porre in esecuzione;
10: in scelta passo da porre in esecuzione;
11:
12: in introduzione parametro par03;
13: in introduzione parametro par04;
14: in diagnostica I/O;
15: in scelta livello 1;
16: in scelta livello 2;
17: in introduzione parametro par07;
Per serie D9
00: in visualizzazioni ricorsive;
01: in visualizzazione allarmi;
02: in movimentazione manuale;
03: in introduzione programmi;
04: in scelta funzione F1;
05: in introduzione password;
06: in setup;
07: in introduzione parametri par01 e par02;
08: in taratura (password 123);
09: in scelta programma da porre in esecuzione;
10: in scelta passo da porre in esecuzione;
11: in introduzione vuota (F1 + 3);
12: in introduzione parametro par03;
13: in introduzione parametro par04;
14: in diagnostica I/O;
15: in scelta funzione F2;
16: in introduzione parametro par05;
17: in introduzione parametro par06;
18: in introduzione parametro par07;
19: riservato.
enableW0R/W-Enable
Abilita le seguenti funzionalità:
Per serie D2
bit 0: movimenti manuali;
bit 1: menù;
bit 2: setup;
bit 3: introduzione parametri par01 e par02;
bit 4: introduzione programma in esecuzione;
bit 5: introduzione passo in esecuzione;
bit 6:
bit 7: introduzione parametro par03;
bit 8: introduzione parametro par04;
bit 9: diagnostica;
bit 10: riservato;
bit 11: riservato;
bit 12: introdurre con par07;
bit 13: taratura;
bit 14: tasto F;
bit 15: abilitazione livello 1;
Per serie D9
bit 0: movimenti manuali;
bit 1: menù;
bit 2: setup;
bit 3: introduzione parametri par01 e par02;
bit 4: introduzione programma in esecuzione;
bit 5: introduzione passo in esecuzione;
bit 6: introduzione F1 + 3;
bit 7: introduzione parametro par03 (F1 + 4);
bit 8: introduzione parametro par04 (F1 + 5);
bit 9: diagnostica(F1 + 6);
bit 10: parametro par05 (F2 + 4);
bit 11: parametro par06 (F2 + 5);
bit 12: introdurre con par07;
bit 13: taratura;
bit 14: tasto F1;
bit 15: tasto F2.
modifiedW0R/W-Modified input
E' una variabile gestita a bit che indica se durante le introduzioni sono stati modificati alcuni dati.
Bit 0:
Bit 1: modificati dati in elema…f o elemend;
Bit 2: modificati dati in setup01…setup12;
Bit 3: modificati dati in par01 o par02;
Bit 4: modificati dati in progex;
Bit 5: modificati dati in stepex;
Bit 6:
Bit 7: modificati dati in par03;
Bit 8: modificati dati in par04;
Bit 9:
Bit 10: modificati dati in par05 (solo serie D9);
Bit 11: modificati dati in par06 (solo serie D9);
Bit 12: modificati dati in par07;
Bit 13:
Bit 14: modificati dati in taratura;
Bit 15:
par01L-R/W-Available variable for future implementation
Variabile disponibile per future implementazioni.
par02L-R/W-Available variable for future implementation
Variabile disponibile per future implementazioni.

0.4.4 Stati

NomeDRACondizioniDescrizione
st_alfullB0R-Buffer alarm full
Segnalazione di buffer allarmi pieno. Lo stato viene sempre aggiornato a seguito di un comando SETALARM oppure quando l'operatore preme il tasto CLEAR.
0 = buffer non pieno.
1 = buffer pieno.
st_alactiveB0R-Alarm active
Segnalazione di allarme attivo.
0 = non vi sono allarmi.
1 = almeno un allarme è attivo.
st_alsetB0R-Alarm setted
Impostato ad uno quando l'allarme viene settato e azzerato con il comando SETALARM.
st_alclearB0R-Alarm cleared
Impostato ad uno quando l'allarme viene cancellato e azzerato con il comando CLRALARM.
st_manfwB0R-Manual forward
Segnalazione di asse in manuale avanti (pressione del tasto 3 in manuale):
0 = asse fermo.
1 = asse in manuale avanti.
st_manbwB0R-Manual backward
Segnalazione di asse fin manuale indietro (pressione del tasto 1 in manuale):
0 = asse fermo.
1 = asse in manuale indietro.
st_slowB0R-Slow
Segnalazione della velocità di movimento dell'asse:
0 = è selezionata la velocità normale.
1 = è selezionata la velocità lenta.
All'accensione per default viene caricato il valore 1.
st_001F0R-Available status for future implementation
Stato disponibile per future implementazioni.
st_002F0R-Available status for future implementation
Stato disponibile per future implementazioni.

0.5 Limitazioni

L'operazione di scrittura tramite il comando WRITESTEP deve essere eseguita tenendo conto che a causa del componente di memoria utilizzato (Flash Eprom seriale) tale operazione risulta onerosa dal punto di vista del tempo utilizzato.
Infatti il tempo utilizzato è variabile da 512 a 1024 volte il tempo di campionamento associato device HMI. Quindi questo tipo di memoria può essere utilizzato per contenere dei dati che possono essere variati dall'operatore con tempistiche relativamente lente. Sicuramente non è una memoria utilizzabile per contenere dati che devono essere scritti con una alta frequenza. In ogni caso l'operazione di scrittura viene eseguita con una modalità in background e non pregiudica le prestazioni della CPU nel gestire il resto dei device e dell'applicativo.
Per esempio se il tempo di campionamento associato al device è di 6 ms, il tempo per eseguire una scrittura nel device può andare da circa 3 a 6 secondi. Il parametro stepout diventa uguale a stepin dopo questo tempo.
Inoltre il tipo di memoria utilizzato garantisce un numero di scritture pari a 100000. Anche per questo si deve evitare di scrivere dei programmi che scrivino in modo continuo sulla memoria utilizzando il comando WRITESTEP.

0.6 Esempio applicativo

; Project :
; Module Name : DISPLAY
; Author :
; Date :
; Time :
; Description : Gestore dei comandi verso il display
;---------------------------------------------
;Inizializzazione del device hmi
hmi:numelem = 6                                                       ;numero di elementi per passo
hmi:numstep = 5                                                       ;numero di passi
hmi:tarsetting = 1                                                    ;selezione delle taratura abilitata
hmi:alsetting = 1                                                     ;Cancellazione di tutti gli allarmi con CLEAR
hmi:enable = 1 + 2 + 4 + 16 + 512 + 4096 + 8192 + 16384               ;Varie abilitazioni
 
MAIN:
  WAIT gwComDisplay
 
  ;-----------------------------------
  ;Comando inserimento parametro 07
  IF gwComDisplay EQ INS_PAR_07
       hmi:nchar07 = 6                                                ;numero di caratteri per inserimento
       hmi:off07 = 0                                                  ;nessun offset sulla posizione
       hmi:decpt07 = 0                                                ;numero di cifre decimali
       hmi:set07 = 1                                                  ;abilita il dataentry
       ENPAR07 hmi
       gwComDisplay = INS_PAR_07 + 1
  ENDIF
  IF gwComDisplay EQ (INS_PAR_07 + 1)
       IF hmi:destatus EQ 18                                          ;Attesa comando ENPAR07 eseguito
            gwComDisplay = INS_PAR_07 + 2
       ENDIF
  ENDIF
  IF gwComDisplay EQ (INS_PAR_07 + 2)
       IF NOT(hmi:destatus EQ 18)                                     ;Attesa uscita dall'inserimento del par07
            gwComDisplay = 0                                          ;Parametro 07 inserito
       ENDIF
  ENDIF
  ;-----------------------------------
  ;Comando visualizzazione messaggio con parametro 07
  IF gwComDisplay EQ VIS_PAR_07
       hmi:nchar07 = 7                                                ;numero di caratteri per inserimento
       hmi:off07 = 0                                                  ;nessun offset sulla posizione
       hmi:set07 = 8                                                  ;Visualizzazione alfanumerica + read only
       ENPAR07 hmi
       gwComDisplay = VIS_PAR_07 + 1
  ENDIF
  IF gwComDisplay EQ (VIS_PAR_07 + 1)
       IF hmi:destatus EQ 18                                          ;Attesa comando ENPAR07 eseguito
          hmi:dis7 = 10                                               ;A
          hmi:dis6 = 26                                               ;U
          hmi:dis5 = 25                                               ;t
          hmi:dis4 = 21                                               ;o
          hmi:dis3 = 35                                               ;(space)
          hmi:dis2 = 35                                               ;(space)
          hmi:dis1 = 35                                               ;(space)
          gwComDisplay = VIS_PAR_07 + 2
          tmVisMsg = 100
       ENDIF
  ENDIF
  IF gwComDisplay EQ (VIS_PAR_07 + 2)
       IF tmVisMsg
          tmVisMsg = 1500
          gwComDisplay = VIS_PAR_07 + 3
       ENDIF
  ENDIF
  IF gwComDisplay EQ (VIS_PAR_07 + 3)
       IF tmVisMsg OR (hmi:key EQ KEY_ENT)                            ;Tempo scaduto o pressione di ENTER
          gwComDisplay = 0
          EXIT hmi                                                    ;uscita dalla visualizzazione par07
       ENDIF
  ENDIF
  ;-----------------------------------
  ;Comando richiamo del programma
  IF gwComDisplay EQ RIC_PRG
          gbI = 1
          gwComDisplay = RIC_PRG + 1
  ENDIF
  IF gwComDisplay EQ (RIC_PRG + 1)
          hmi:progin = swPrgEx
          hmi:stepin = gbI
          hmi:stepout = 0
          READSTEP hmi                                                ;Comando lettura del device
          gwComDisplay = RIC_PRG + 2
  ENDIF
  IF gwComDisplay EQ (RIC_PRG + 2)
     IF hmi:stepin EQ hmi:stepout                                     ;Attesa lettura avvenuta
          aslLungh[gbI] = hmi:elema
          aslRipet[gbI] = hmi:elemb
          asbVel[gbI] = hmi:elemc
          gbI = gbI + 1
            IF gbI LE NUM_STEP
               gwComDisplay = RIC_PRG + 1
            ELSE
               gwComDisplay = 0
            ENDIF
     ENDIF
  ENDIF
  ;-----------------------------------
  ;Comando impostazione visualizzazioni ricorsive per automatico
  IF gwComDisplay EQ VIS_AUTO
             ;Impostazioni HMI
             hmi:enable = hmi:enable ANDB (-1-8192)                   ;Disabilita taratura
             hmi:enable = hmi:enable ANDB (-1-16)                     ;Disabilita scelta programma
             hmi:enable = hmi:enable ANDB (-1-4)                      ;Disabilita setup
             hmi:enable = hmi:enable ANDB (-1-2)                      ;Disabilita programmazione
             hmi:enable = hmi:enable ANDB (-1-1)                      ;Disabilita manuale
             hmi:leds = hmi:leds ORB LED_1                            ;Accensione led automatico
             hmi:blinkleds = hmi:blinkleds ANDB (-1-LED_1)            ;Spegnimento lampeggio led
             hmi:scnum = 127                                          ;un bit per ogni visualizzazione abilitata
             hmi:sclabel1 = CH_Q                                      ;Quota asse
             hmi:scdecpt1 = 1
             hmi:sclabel2 = CH_L                                      ;Passo in esecuzione (linea)
             hmi:scdecpt2 = 0
             hmi:sclabel3 = CH_P                                      ;Programma in esecuzione
             hmi:scdecpt3 = 0
             hmi:sclabel4 = CH_S                                      ;Numero di pezzi programmati
             hmi:scdecpt4 = 0
             hmi:sclabel5 = CH_D                                      ;Numero di pezzi fatti (Done)
             hmi:scdecpt5 = 0
             hmi:sclabel6 = CH_R                                      ;Numero di pezzi rimanenti (Remain)
             hmi:scdecpt6 = 0
             hmi:sclabel7 = CH_C                                      ;numero di ripetizioni del passo in corso
             hmi:scdecpt7 = 0
                  ;Messaggio: "Auto"
             gwComDisplay = VIS_PAR_07
  ENDIF
  ;-----------------------------------
  ;Comando impostazione visualizzazioni ricorsive per automatico
  IF gwComDisplay EQ VIS_SEMIAUTO
             ;Impostazioni HMI
             hmi:enable = hmi:enable ANDB (-1-8192)                   ;Disabilita taratura
             hmi:enable = hmi:enable ANDB (-1-16)                     ;Disabilita scelta programma
             hmi:enable = hmi:enable ANDB (-1-4)                      ;Disabilita setup
             hmi:enable = hmi:enable ANDB (-1-2)                      ;Disabilita programmazione
             hmi:enable = hmi:enable ANDB (-1-1)                      ;Disabilita manuale
             hmi:leds = hmi:leds ORB LED_1                            ;Accensione led automatico
             hmi:blinkleds = hmi:blinkleds ORB LED_1                  ;Lampeggio led automatico
             hmi:scnum = 127                                          ;un bit per ogni visualizzazione abilitata
             hmi:sclabel1 = CH_Q                                      ;Quota asse
             hmi:scdecpt1 = 1
             hmi:sclabel2 = CH_L                                      ;Passo in esecuzione (linea)
             hmi:scdecpt2 = 0
             hmi:sclabel3 = CH_P                                      ;Programma in esecuzione
             hmi:scdecpt3 = 0
             hmi:sclabel4 = CH_S                                      ;Numero di pezzi programmati
             hmi:scdecpt4 = 0
             hmi:sclabel5 = CH_D                                      ;Numero di pezzi fatti (Done)
             hmi:scdecpt5 = 0
             hmi:sclabel6 = CH_R                                      ;Numero di pezzi rimanenti (Remain)
             hmi:scdecpt6 = 0
             hmi:sclabel7 = CH_C                                      ;numero di ripetizioni del passo in corso
             hmi:scdecpt7 = 0
  ENDIF
  ;-----------------------------------
  ;Comando impostazione visualizzazioni per manuale
  IF gwComDisplay EQ VIS_MAN
             ;Impostazioni HMI
             hmi:leds = hmi:leds ANDB (-1 - LED_1)                    ;Spegnimento led automatico
             hmi:manvalue = anAvanz1:posit                            ;Valore visualizzato
             hmi:mandecpt = 1                                         ;Cifre decimali
             hmi:mansetting = 0                                       ;nessuna selezione asse (unico)
             gwComDisplay = 0
  ENDIF
  ;-----------------------------------
  ;Comando impostazione programmi di lavoro
  IF gwComDisplay EQ VIS_PROG
             ;Impostazioni HMI
             hmi:elemtypef = 2                                        ;numero di bit dell'elemf
             hmi:prgsetting = 1                                       ;abilita la selezione del passo
             gwComDisplay = 0
  ENDIF
  ;-----------------------------------
  ;Comando impostazione visualizzazioni ricorsive di standby
  IF gwComDisplay EQ VIS_STANDBY
             ;Impostazioni HMI
             hmi:enable = hmi:enable ORB 8192                         ;Abilita taratura
             hmi:enable = hmi:enable ORB 16                           ;Abilita scelta programma
             hmi:enable = hmi:enable ORB 4                            ;Abilita setup
             hmi:enable = hmi:enable ORB 2                            ;Abilita introduzione programmi
             hmi:enable = hmi:enable ORB 1                            ;Abilita manuale
             hmi:leds = hmi:leds ANDB (-1-LED_1-LED_2-LED_3-LED_4)    ;Tutti i LED spenti
             hmi:leds = hmi:leds ANDB (-1-LED_F3)
             hmi:scnum = 127                                          ;un bit per ogni visualizzazione abilitata
             hmi:sclabel1 = CH_Q                                      ;Quota asse
             hmi:scdecpt1 = 1
             hmi:sclabel2 = CH_L                                      ;Passo in esecuzione (linea)
             hmi:scdecpt2 = 0
             hmi:sclabel3 = CH_P                                      ;Programma in esecuzione
             hmi:scdecpt3 = 0
             hmi:sclabel4 = CH_S                                      ;Numero di pezzi programmati
             hmi:scdecpt4 = 0
             hmi:sclabel5 = CH_D                                      ;Numero di pezzi fatti (Done)
             hmi:scdecpt5 = 0
             hmi:sclabel6 = CH_R                                      ;Numero di pezzi rimanenti (Remain)
             hmi:scdecpt6 = 0
             hmi:sclabel7 = CH_C                                      ;numero di ripetizioni del passo in corso
             hmi:scdecpt7 = 0
             EXIT hmi                                                 ;Uscita da qualsiasi stato hmi
             gwComDisplay = 0
  ENDIF
  ;-----------------------------------
  ;-----------------------------------
  ;Comando impostazione visualizzazioni per setup
  IF gwComDisplay EQ VIS_SETUP
             ;Impostazioni HMI
             hmi:leds = hmi:leds ORB LED_2
             hmi:setup01 = anAvanz1:measure
             hmi:setup02 = anAvanz1:pulse
             hmi:setup03 = anAvanz1:tacc
             hmi:setup04 = anAvanz1:tdec
             hmi:setup05 = aswModiPunz[1]
             hmi:setup06 = aswModiPunz[2]
             hmi:setup07 = aswModiPunz[3]
             hmi:setup08 = aswModiPunz[4]
             hmi:setup09 = swOutToll
             hmi:setup10 = swVelMinMan
             hmi:setup11 = swVelMaxMan
             hmi:setup12 = slRitSvolg
             gwComDisplay = 0
  ENDIF
  ;-----------------------------------
  JUMP MAIN
END